import {HttpException, HttpStatus, Injectable} from "@nestjs/common"
import { JwtService } from "@nestjs/jwt"
import IResponse from "@/services/response.service"
import { ReqProvider } from "@/core/providers/req.provider";
import {DbService} from "@/db/db.service";
import IHelper from "@/services/helper.service";

@Injectable()
export class AuthService {
  constructor(
    private readonly jwtService: JwtService,
    private readonly reqProvider: ReqProvider,
  ) {}

  sign(id: number): string {
    return this.jwtService.sign({ id })
  }

  getUser() {
    const result = this.reqProvider.user ? {
      user: {...this.reqProvider.user},
      ticket: this.sign(this.reqProvider.user.id)
    } : {
      user: null, ticket: ""
    }
    return IResponse.success(result)
  }
}
